Method and system of allocating code resources for high speed physical downlink shared channel

ABSTRACT

A method and system of allocating code resources for a high speed physical downlink shared channel are disclosed. The method includes: recording usage states for all code resources of a system at a base station; allocating, by the base station, code resources with idle state to the HS-PDSCH when the code resources of the HS-PDSCH are not enough. The system includes a radio network controller and a base station; the radio network controller is configured to allocate code resources of a system to corresponding channels, and inform the usage states of the code resources to the base station. When there is a shortage of code resources for HS-PDSCHs, idle code resources in a same code tree may be temporarily allocated to the HS-PDSCHs. Thus, the shortage of code resources is moderated to some extent, and the efficiency of code resources in the overall system is raised.

FIELD OF THE INVENTION

The present invention relates to code resource allocation techniques ina communication system, and more particularly, to a method and system ofallocating code resources for a High Speed Physical Downlink SharedChannel (HS-PDSCH).

BACKGROUND OF THE INVENTION

High Speed Downlink Packet Access (HSDPA) is a key technology in theWideband Code Division Multiple Access (WCDMA) system, which can realizedownlink high speed data transmission through a series of approaches,such as Adaptive Modulation and Coding (AMC), Hybrid Automatic RepeatRequest (HARQ), NodeB fast scheduling and so on.

Two kinds of downlink channels are added into the WCDMA system where theHSDPA has been introduced, one is a High Speed Physical Downlink SharedChannel (HS-PDSCH) for transmitting data information, and the other is aHigh Speed Shared Control Channel (HS-SCCH) for transmitting controlinformation of the HS-PDSCH. When there is no HS-PDSCH, C(256,1) isfixedly allocated to a Primary Common Control Physical Channel (PCCPCH)and C(256,0) to a Primary Common Pilot Channel (PCPICH) by a RadioNetwork Controller (RNC), where C(X, Y) represents a channelization codewith a Spreading Factor (SF) equal to X and a code number equal to Y,and the channelization code is commonly called a code. Apart from theabove two channels, other channels in the WCDMA system obtain theirchannelization codes by means of dynamic allocation due to thelimitation of downlink code resources. After the HS-PDSCH is introducedinto the WCDMA system, a cell may simultaneously have multipleHS-PDSCHs, and it is required in the WCDMA system that thechannelization codes of these multiple HS-PDSCHs may be consecutive.Therefore, the RNC may generally reserve some code resources for theHS-PDSCHs. As specified in the protocols, the SFs of the channelizationcodes used by the HS-PDSCHs are 16, and thus, the RNC will reserveseveral consecutive channelization codes with the SF 16 for theHS-PDSCHs, which may not be allocated to other channels any more.According to the specifications, the maximum number of HS-PDSCHsavailable in each cell is 15, and these HS-PDSCHs are shared by HSDPAusers in the cell.

When allocating code resources for HS-PDSCHs, various strategies can beemployed by the RNC. For example, the RNC may reserve zero code resourceaccording to practical situations, that is, reserve no code resource; orreserve code resources according to the required highest speed of asingle traffic; or according to the capacity of a traffic model.Generally, the RNC determines the code resources needed by the HS-PDSCHsaccording to the traffic model of each cell. When traffic models andstrategies for accessing bearers of a cell have been determined, thecode resources reserved by the RNC for the HS-PDSCHs can primarily meetthe real application demands of cell users.

However, traffic capacity of HS-PDSCHs may change with the actualdemands of users. Moreover, the environment of channels may also changewith the moving of users or changing of surroundings, which may lead tothe changing of code resource demands of cell users. If the amount ofcode resources reserved for HS-PDSCHs by the RNC is small, and noappropriate adjustment is carried out according to actual demands, coderesources with idle state in the system can not be used by theHS-PDSCHs, and there may be a shortage of code resources for theHS-PDSCHs, which will reduce the efficiency of code resources.

SUMMARY OF THE INVENTION

An embodiment of the present invention is to provide a method toallocate the idle code resources of a cell to the HS-PDSCHs at the basestation according to the actual usage of code resources, so as tomaximally meet the demands of HS-PDSCHs.

Another method is provided in an embodiment of the present invention tomeet the code resource demands of HS-PDSCHs and raise the efficiency ofcode resources.

Further, a system of allocating code resources for an HS-PDSCH isprovided in an embodiment of the present invention to overcome theshortage of code resources for the HS-PDSCHs, and meet the code resourcedemands of HS-PDSCHs.

The method of allocating code resources for a high speed physicaldownlink shared channel, including:

recording usage states for code resources of a system; and

allocating code resources with idle state to the high speed physicaldownlink shared channel when the code resources of the high speedphysical downlink shared channel are not enough.

The method of allocating code resources for a high speed physicaldownlink shared channel, including:

allocating, by a radio network controller, code resources of a system tocorresponding channels, and informing the usage states of the coderesources to a base station;

updating the usage states of the code resources at the base stationaccording to the information sent from the radio network controller; and

allocating, by the base station, code resources with idle state to thehigh speed physical downlink shared channel when the code resources ofthe high speed physical downlink shared channel are not enough.

The system of allocating code resources for a high speed physicaldownlink shared channel, the system includes a radio network controllerand a base station;

wherein the radio network controller is configured to allocate coderesources of a system to corresponding channels, and inform the usagestates of the code resources to the base station;

the base station is configured to update the usage states of the coderesources at the base station according to the information sent from theradio network controller, and allocate code resources with idle state tothe high speed physical downlink shared channel when the code resourcesof the high speed physical downlink shared channel are not enough.

It can be seen from the foregoing technical schemes that, through themethod of allocating code resources to a High Speed Physical DownlinkShared Channel (HS-PDSCH) of the embodiments, a virtual code informationtable may be set at a base station, that is an NODEB, to monitor usagestates of all codes of which the SFs are the same as those of the codesof the HS-PDSCHs in a cell. When the code resources of the HS-PDSCHs arelimited while other codes with the same SF are idle, the NODEB may,based on short-time scheduling characteristics of the HS-PDSCHs,allocate the idle code resources to the HS-PDSCHs for temporary use andrelease the temporarily used idle code resources after the scheduling isfinished. Thus, the problem that the code resources of the HS-PDSCHs arelimited is moderated, and the efficiency of the code resources of thewhole system is raised.

Moreover, a system of allocating code resources for the HS-PDSCH isprovided in the embodiments, which is managed by both RNC and NODEB. TheRNC is responsible for allocating code resources for all channels in thesystem, while the NODEB is responsible for temporarily allocating coderesources with idle state to HS-PDSCHs and releasing the temporarilyused code resources back to idle state. At present, the NODEB is adoptedto dynamically manage the code resources of HS-PDSCHs, which simplifiesthe RNC's policies of allocating code resources for HS-PDSCHs. Further,the code resources of HS-PDSCHs may be completely managed at the NODEB.In this way, the RNC may allocate a small number of code resources forthe HS-PDSCHs, or even allocate no code resource for the HS-PDSCHs.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a flowchart of allocating code resources for HS-PDSCHs in anembodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention is hereinafter further described in detail withreference to the accompanying drawing as well as embodiments so as tomake the objects, technical schemes and merits thereof clearer.

As specified in protocols, all codes reserved for HS-PDSCHs have a sameSpreading Factor 16. When the RNC allocates code resources to allchannels in the system, some rules should be followed. For example, withrespect to the DCH, the RNC starts from the smallest code number in thecode tree, and with respect to the HS-PDSCHs, from the largest one.Thus, on one hand, fragments of codes brought about by code resourceallocation will be reduced to a maximum limit; on the other hand, codeswith smaller SFs in the code tree will be most possibly set aside forhigh speed traffic, which may raise the efficiency of codes. Accordingto the strategies mentioned above, FIG. 1 shows a flowchart ofallocating code resources for HS-PDSCHs in an embodiment of the presentinvention, which includes the steps of:

Step 101: An NODEB sets a virtual code information table for HS-PDSCHs,for recording usage states of all codes having a same SF with thechannelization codes of the HS-PDSCHs.

Here, the code having a same SF with the channelization codes of theHS-PDSCHs refers to a code with the SF 16. As C(256,0) and C(256,1),which are subcodes of C(16,0), have been fixedly allocated to commonchannels by the RNC, C(16,0) can not be temporarily used by theHS-PDSCHs. Thus, the virtual code information table may only record theusage states of the other fifteen codes C(16,1), C(16,2), . . . ,C(16,15). Initially, these fifteen codes are marked as idle, showingthat the codes have not been used yet.

Step 102: When a certain code or any subcode of a certain code in thevirtual code information table is used, a Radio Network Controller (RNC)will send a message to the NODEB, and the NODEB will mark the usagestate of the certain code as occupied.

In this step, if the code currently used is a subcode, the NODEB willdetermine the code with the SF 16 to which the subcode corresponds afterreceiving the message from the RNC, and mark the usage state of the codeas occupied. For example, suppose the subcode currently used is C(32,2),then the NODEB will mark the state of C(16,1) as occupied.

Moreover, if a certain code is released after being used, the RNC maysend a message to the NODEB as well. Then, the NODEB may change theusage state of the code from occupied to idle in the virtual codeinformation table.

Step 103: In each Medium Access Control-high speed (MAC-hs) schedulingperiod, the NODEB will check the usage states for each code of a codetree recorded in the virtual code information table in a descendingorder. If there is a code with idle state, the NODEB may allocate thecode to an HS-PDSCH for temporary use and mark the usage state of thecode as temporarily used in the virtual code information table. Withrespect to the codes marked as occupied, since these codes have beenallocated by the RNC, they can not be allocated to the HS-PDSCHs at theNODEB for temporary use.

Step 104: The HS-PDSCHs use the codes temporarily allocated by the NODEBto carry traffic, and release the codes after finishing the scheduling.Afterwards, the usage states of the codes at the NODEB are changed fromtemporarily used to idle so that they can be used again in a subsequentprocess.

The state temporarily used means to occupy a code for a short while.Since the scheduling period of an HS-PDSCH is generally 2 ms, a codewill be back to an idle state after being used by the HS-PDSCH for 2 ms.Even if a certain code is allocated by the RNC at the same time when itis temporarily used at the NODEB, a conflict for the usage of the codewill not happen in this situation, because it will take at least 50 msfor the RNC to send out the message and receive a response from theNODEB, i.e., it will take at least 50 ms for the RNC to allocate thecodes. Therefore, it is feasible to temporarily use an idle code in theembodiment.

A specific example will be given hereinafter to describe a method ofdynamically managing code resources for HS-PDSCHs at an NODEB. In thisexample, four codes reserved by the RNC for HS-PDSCHs are C(16,15),C(16,14), C(16,13) and C(16,12), respectively. All of the four codes areused, thus the states of C(16,15), C(16,14), C(16,13) and C(16,12) inthe virtual code information table are marked as occupied, and thestates of other codes in the table are idle.

In a certain scheduling period, the NODEB determines that the coderesources allocated to HS-PDSCHs are not enough according to the actualtraffic volume. If no more code resources are allocated to theHS-PDSCHs, data volume sent by users in this scheduling period will bedecreased, which will reduce throughput of the system and lead to awaste of system power.

At this moment, the NODEB adopts a scheduling algorithm to figure outthe code number needed by users of its cell, and determines that twomore codes are needed by the HS-PDSCHs. Then, the NODEB sequentiallysearches the records of the virtual code information table saved initself in a descending order. Through searching the virtual codeinformation table, the NODEB finds that two codes consecutive with thecodes allocated to the HS-PDSCHs by the RNC, that is C(16,11) andC(16,10), are idle, thus allocates C(16,11) and C(16,10) to theHS-PDSCHs for temporary use in this scheduling period, and marks theusage states of these two codes as temporarily used. Therefore, theproblem that there is a shortage of codes for HS-PDSCHs can be solved inthese cases.

It can be seen from the foregoing embodiments that, according to themethod and system of allocating code resources for HS-PDSCHs inaccordance with the present invention, a virtual code information tableis set for monitoring the usage states of all the codes in a cell ofwhich the SFs are the same as those of the codes of HS-PDSCHs. Whenthere is a shortage of code resources for HS-PDSCHs, idle code resourcesin a same code tree may be temporarily allocated to the HS-PDSCHs. Thus,the shortage of code resources for HS-PDSCHs is moderated to someextent, and the efficiency of code resources is raised.

1. A method of allocating code resources for a high speed physical downlink shared channel, comprising: recording usage states for code resources of a system; and allocating code resources with idle state to the high speed physical downlink shared channel when the code resources of the high speed physical downlink shared channel are not enough.
 2. The method according to claim 1, wherein recording usage states for code resources of a system comprises: setting at the base station state records for codes of which spreading factors are the same as the spreading factor of codes of the high speed physical downlink shared channel, and marking the state of every code in the corresponding state record according to the usage of the code.
 3. The method according to claim 2, wherein setting state records for codes comprises: setting a virtual code information table to record the usage state of every code.
 4. The method according to claim 3, wherein allocating code resources with idle state to the high speed physical downlink shared channel comprises: the base station searching in the virtual code information table the state records of the codes one by one in a descending order of a code tree, allocating the idle codes, which are consecutive with the codes allocated to the high speed physical downlink shared channel by the radio network controller, to the high speed physical downlink shared channel for temporary use, and setting the states of the idle codes as temporarily used in the virtual code information table.
 5. The method according to claim 4, further comprising: the high speed physical downlink shared channel releasing the codes with temporarily used state after finishing scheduling, and the base station setting the states of the codes as idle.
 6. The method according to claim 3, wherein marking the state of every code according to the usage comprises: after allocating a code, a radio network controller informing the base station that the code has been used, and the base station setting the state of the corresponding code as occupied in the virtual code information table; or, after releasing an occupied code, the radio network controller informing the base station that the code has been set free, and the base station setting the corresponding code as idle in the virtual code information table.
 7. The method according to claim 6, wherein the base station setting the corresponding code as idle comprises: if the code allocated by the radio network controller is a subcode of the code recorded in the virtual code information table, the base station setting the state of the code to which the subcode corresponds as occupied.
 8. The method according to claim 6, wherein allocating code resources with idle state to the high speed physical downlink shared channel comprises: the base station searching in the virtual code information table the state records of the codes one by one in a descending order of a code tree, allocating the idle codes, which are consecutive with the codes allocated to the high speed physical downlink shared channel by the radio network controller, to the high speed physical downlink shared channel for temporary use, and setting the states of the idle codes as temporarily used in the virtual code information table.
 9. The method according to claim 8, further comprising: the high speed physical downlink shared channel releasing the codes with temporarily used state after finishing scheduling, and the base station setting the states of the codes as idle.
 10. The method according to claim 1, further comprising: the base station determining in each scheduling period whether the code resources of the high speed physical downlink shared channel are enough.
 11. A method of allocating code resources for a high speed physical downlink shared channel, comprising: allocating, by a radio network controller, code resources of a system to corresponding channels, and informing the usage states of the code resources to a base station; updating the usage states of the code resources at the base station according to the information sent from the radio network controller; and allocating, by the base station, code resources with idle state to the high speed physical downlink shared channel when the code resources of the high speed physical downlink shared channel are not enough.
 12. The method according to claim 11, wherein recording usage states for code resources of a system at a base station comprises: setting at the base station state records for codes of which spreading factors are the same as the spreading factor of codes of the high speed physical downlink shared channel, and marking the state of every code in the corresponding state record according to the usage of the code.
 13. The method according to claim 12, wherein allocating code resources with idle state to the high speed physical downlink shared channel comprises: the base station searching in the virtual code information table the state records of the codes one by one in a descending order of a code tree, allocating the idle codes, which are consecutive with the codes allocated to the high speed physical downlink shared channel by the radio network controller, to the high speed physical downlink shared channel for temporary use, and setting the states of the idle codes as temporarily used in the virtual code information table.
 14. The method according to claim 13, further comprising: the high speed physical downlink shared channel releasing the codes with temporarily used state after finishing scheduling, and the base station setting the states of the codes as idle.
 15. The method according to claim 11, wherein marking the state of every code according to the usage comprises: after allocating a code, a radio network controller informing the base station that the code has been used, and the base station setting the state of the corresponding code as occupied in the virtual code information table; or, after releasing an occupied code, the radio network controller informing the base station that the code has been set free, and the base station setting the corresponding code as idle in the virtual code information table.
 16. The method according to claim 15, wherein allocating code resources with idle state to the high speed physical downlink shared channel comprises: the base station searching in the virtual code information table the state records of the codes one by one in a descending order of a code tree, allocating the idle codes, which are consecutive with the codes allocated to the high speed physical downlink shared channel by the radio network controller, to the high speed physical downlink shared channel for temporary use, and setting the states of the idle codes as temporarily used in the virtual code information table.
 17. The method according to claim 16, further comprising: the high speed physical downlink shared channel releasing the codes with temporarily used state after finishing scheduling, and the base station setting the states of the codes as idle.
 18. A system of allocating code resources for a high speed physical downlink shared channel, comprising a radio network controller and a base station; wherein the radio network controller is configured to allocate code resources of a system to corresponding channels, and inform the usage states of the code resources to the base station; the base station is configured to update the usage states of the code resources at the base station according to the information sent from the radio network controller, and allocate code resources with idle state to the high speed physical downlink shared channel when the code resources of the high speed physical downlink shared channel are not enough. 